<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>

<title>ExecutableSpecification (randoop 4.1.0 API)</title>

<link rel="stylesheet" type="text/css" href="../../javadocstyle.css" title="Style">
<script type="text/javascript" src="../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="ExecutableSpecification (randoop 4.1.0 API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../randoop/condition/ExpectedOutcomeTable.html" title="class in randoop.condition"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?randoop/condition/ExecutableSpecification.html" target="_top">Frames</a></li>
<li><a href="ExecutableSpecification.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">randoop.condition</div>
<h2 title="Class ExecutableSpecification" class="title">Class ExecutableSpecification</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>randoop.condition.ExecutableSpecification</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">ExecutableSpecification</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block">The executable version of an <a href="../../randoop/condition/specification/OperationSpecification.html" title="class in randoop.condition.specification"><code>OperationSpecification</code></a>. It
 allows the underlying Boolean expressions to be evaluated.

 <p>It is represented as the collection of all <a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition"><code>ExecutableBooleanExpression</code></a>, <a href="../../randoop/condition/GuardPropertyPair.html" title="class in randoop.condition"><code>GuardPropertyPair</code></a>, and <a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition"><code>GuardThrowsPair</code></a> for the <a href="../../randoop/condition/specification/Precondition.html" title="class in randoop.condition.specification"><code>Precondition</code></a>, <a href="../../randoop/condition/specification/Postcondition.html" title="class in randoop.condition.specification"><code>Postcondition</code></a>, and <a href="../../randoop/condition/specification/ThrowsCondition.html" title="class in randoop.condition.specification"><code>ThrowsCondition</code></a> objects defined on a single operation. Includes
 specifications inherited from supertypes.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/GuardPropertyPair.html" title="class in randoop.condition">GuardPropertyPair</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#guardPropertyPairs">guardPropertyPairs</a></span></code>
<div class="block">The <a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition"><code>GuardThrowsPair</code></a> objects for the <a href="../../randoop/condition/specification/Postcondition.html" title="class in randoop.condition.specification"><code>Postcondition</code></a>s of the operation.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition">GuardThrowsPair</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#guardThrowsPairs">guardThrowsPairs</a></span></code>
<div class="block">The <a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition"><code>GuardThrowsPair</code></a> objects for the <a href="../../randoop/condition/specification/ThrowsCondition.html" title="class in randoop.condition.specification"><code>ThrowsCondition</code></a>s of the operation.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition">ExecutableSpecification</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#parentList">parentList</a></span></code>
<div class="block">Mirrors the overrides/implements relation among methods.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition">ExecutableBooleanExpression</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#preExpressions">preExpressions</a></span></code>
<div class="block">The <a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition"><code>ExecutableBooleanExpression</code></a> objects for the <a href="../../randoop/condition/specification/Precondition.html" title="class in randoop.condition.specification"><code>Precondition</code></a>s of the operation.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#ExecutableSpecification--">ExecutableSpecification</a></span>()</code>
<div class="block">Creates an empty <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a> object.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#ExecutableSpecification-java.util.List-java.util.List-java.util.List-">ExecutableSpecification</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition">ExecutableBooleanExpression</a>&gt;&nbsp;preExpressions,
                       <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/GuardPropertyPair.html" title="class in randoop.condition">GuardPropertyPair</a>&gt;&nbsp;guardPropertyPairs,
                       <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition">GuardThrowsPair</a>&gt;&nbsp;guardThrowsPairs)</code>
<div class="block">Creates an <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a> object for the lists of guard expressions for
 pre-specifications, <a href="../../randoop/condition/GuardPropertyPair.html" title="class in randoop.condition"><code>GuardPropertyPair</code></a> objects for post-specifications, and <a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition"><code>GuardThrowsPair</code></a> objects for throws-specifications.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>(package private) void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#addParent-randoop.condition.ExecutableSpecification-">addParent</a></span>(<a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition">ExecutableSpecification</a>&nbsp;parentExecSpec)</code>
<div class="block">Add the parent <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a> for this collection.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>private <a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition">ExecutableBooleanExpression</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#checkGuardPropertyPairs-java.lang.Object:A-">checkGuardPropertyPairs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;args)</code>
<div class="block">Tests the given argument values against the guards of local postconditions, which are the
 <a href="../../randoop/condition/GuardPropertyPair.html" title="class in randoop.condition"><code>GuardPropertyPair</code></a> objects in this <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a>.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/ThrowsClause.html" title="class in randoop.condition">ThrowsClause</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#checkGuardThrowsPairs-java.lang.Object:A-">checkGuardThrowsPairs</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;args)</code>
<div class="block">Evaluate the guard of each local <a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition"><code>GuardThrowsPair</code></a>, and for each one satisfied, add the
 <a href="../../randoop/condition/ThrowsClause.html" title="class in randoop.condition"><code>ThrowsClause</code></a> to the set of expected exceptions.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>private boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#checkPreExpressions-java.lang.Object:A-">checkPreExpressions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;args)</code>
<div class="block">Tests the given argument values against the local preconditions, which are the <a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition"><code>ExecutableBooleanExpression</code></a> objects in <a href="../../randoop/condition/ExecutableSpecification.html#preExpressions"><code>preExpressions</code></a> in this <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a>.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../randoop/condition/ExpectedOutcomeTable.html" title="class in randoop.condition">ExpectedOutcomeTable</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#checkPrestate-java.lang.Object:A-">checkPrestate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;args)</code>
<div class="block">Check all guard expressions of the method's full specification, which includes this <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a> and those of any overridden/implemented method.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#checkPrestate-java.lang.Object:A-randoop.condition.ExpectedOutcomeTable-">checkPrestate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;args,
             <a href="../../randoop/condition/ExpectedOutcomeTable.html" title="class in randoop.condition">ExpectedOutcomeTable</a>&nbsp;table)</code>
<div class="block">Modifies the given table, adding an <a href="../../randoop/condition/ExpectedOutcomeTable.html" title="class in randoop.condition"><code>ExpectedOutcomeTable</code></a> entry for the guard
 expressions of this method's local specification recording the following:

 
   Whether the <a href="../../randoop/condition/ExecutableSpecification.html#preExpressions"><code>preExpressions</code></a> fail or are satisfied.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/condition/ExecutableSpecification.html#isEmpty--">isEmpty</a></span>()</code>
<div class="block">Indicates whether the full specification is empty: this <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a>, and
 any member of the parent list, has no guard expresions, no property pairs, and no throws pairs.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="preExpressions">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>preExpressions</h4>
<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition">ExecutableBooleanExpression</a>&gt; preExpressions</pre>
<div class="block">The <a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition"><code>ExecutableBooleanExpression</code></a> objects for the <a href="../../randoop/condition/specification/Precondition.html" title="class in randoop.condition.specification"><code>Precondition</code></a>s of the operation.</div>
</li>
</ul>
<a name="guardPropertyPairs">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>guardPropertyPairs</h4>
<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/GuardPropertyPair.html" title="class in randoop.condition">GuardPropertyPair</a>&gt; guardPropertyPairs</pre>
<div class="block">The <a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition"><code>GuardThrowsPair</code></a> objects for the <a href="../../randoop/condition/specification/Postcondition.html" title="class in randoop.condition.specification"><code>Postcondition</code></a>s of the operation.</div>
</li>
</ul>
<a name="guardThrowsPairs">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>guardThrowsPairs</h4>
<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition">GuardThrowsPair</a>&gt; guardThrowsPairs</pre>
<div class="block">The <a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition"><code>GuardThrowsPair</code></a> objects for the <a href="../../randoop/condition/specification/ThrowsCondition.html" title="class in randoop.condition.specification"><code>ThrowsCondition</code></a>s of the operation.</div>
</li>
</ul>
<a name="parentList">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>parentList</h4>
<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition">ExecutableSpecification</a>&gt; parentList</pre>
<div class="block">Mirrors the overrides/implements relation among methods. If this ExecutableSpecification is the
 local specification for method declaration m, the <code>parentList</code> contains one element for
 each method that m overrides or implements (and has specifications).</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="ExecutableSpecification--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ExecutableSpecification</h4>
<pre>public&nbsp;ExecutableSpecification()</pre>
<div class="block">Creates an empty <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a> object.</div>
</li>
</ul>
<a name="ExecutableSpecification-java.util.List-java.util.List-java.util.List-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ExecutableSpecification</h4>
<pre>public&nbsp;ExecutableSpecification(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition">ExecutableBooleanExpression</a>&gt;&nbsp;preExpressions,
                               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/GuardPropertyPair.html" title="class in randoop.condition">GuardPropertyPair</a>&gt;&nbsp;guardPropertyPairs,
                               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition">GuardThrowsPair</a>&gt;&nbsp;guardThrowsPairs)</pre>
<div class="block">Creates an <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a> object for the lists of guard expressions for
 pre-specifications, <a href="../../randoop/condition/GuardPropertyPair.html" title="class in randoop.condition"><code>GuardPropertyPair</code></a> objects for post-specifications, and <a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition"><code>GuardThrowsPair</code></a> objects for throws-specifications.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>preExpressions</code> - the operation pre-specifications</dd>
<dd><code>guardPropertyPairs</code> - the operation post-specifications</dd>
<dd><code>guardThrowsPairs</code> - the operation throws-specifications</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="checkPrestate-java.lang.Object:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPrestate</h4>
<pre>public&nbsp;<a href="../../randoop/condition/ExpectedOutcomeTable.html" title="class in randoop.condition">ExpectedOutcomeTable</a>&nbsp;checkPrestate(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;args)</pre>
<div class="block">Check all guard expressions of the method's full specification, which includes this <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a> and those of any overridden/implemented method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>args</code> - the argument values to test the guard expressions</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the table with entries for this operation</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../randoop/condition/ExecutableSpecification.html#checkPrestate-java.lang.Object:A-randoop.condition.ExpectedOutcomeTable-"><code>checkPrestate(Object[], ExpectedOutcomeTable)</code></a></dd>
</dl>
</li>
</ul>
<a name="checkPrestate-java.lang.Object:A-randoop.condition.ExpectedOutcomeTable-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPrestate</h4>
<pre>private&nbsp;void&nbsp;checkPrestate(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;args,
                           <a href="../../randoop/condition/ExpectedOutcomeTable.html" title="class in randoop.condition">ExpectedOutcomeTable</a>&nbsp;table)</pre>
<div class="block">Modifies the given table, adding an <a href="../../randoop/condition/ExpectedOutcomeTable.html" title="class in randoop.condition"><code>ExpectedOutcomeTable</code></a> entry for the guard
 expressions of this method's local specification recording the following:

 <ol>
   <li>Whether the <a href="../../randoop/condition/ExecutableSpecification.html#preExpressions"><code>preExpressions</code></a> fail or are satisfied. See <a href="../../randoop/condition/ExecutableSpecification.html#checkPreExpressions-java.lang.Object:A-"><code>checkPreExpressions(java.lang.Object[])</code></a>.
   <li>A set of <a href="../../randoop/condition/ThrowsClause.html" title="class in randoop.condition"><code>ThrowsClause</code></a> objects for expected exceptions. See <a href="../../randoop/condition/ExecutableSpecification.html#checkGuardThrowsPairs-java.lang.Object:A-"><code>checkGuardThrowsPairs(java.lang.Object[])</code></a>.
   <li>The expected <a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition"><code>ExecutableBooleanExpression</code></a>, if any. See <a href="../../randoop/condition/ExecutableSpecification.html#checkGuardPropertyPairs-java.lang.Object:A-"><code>checkGuardPropertyPairs(java.lang.Object[])</code></a>.
 </ol></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>args</code> - the argument values</dd>
<dd><code>table</code> - the table to which the created entry is to be added</dd>
</dl>
</li>
</ul>
<a name="checkPreExpressions-java.lang.Object:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPreExpressions</h4>
<pre>private&nbsp;boolean&nbsp;checkPreExpressions(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;args)</pre>
<div class="block">Tests the given argument values against the local preconditions, which are the <a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition"><code>ExecutableBooleanExpression</code></a> objects in <a href="../../randoop/condition/ExecutableSpecification.html#preExpressions"><code>preExpressions</code></a> in this <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>args</code> - the argument values</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>false if any local precondition fails on the argument values, true if all succeed</dd>
</dl>
</li>
</ul>
<a name="checkGuardThrowsPairs-java.lang.Object:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkGuardThrowsPairs</h4>
<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../randoop/condition/ThrowsClause.html" title="class in randoop.condition">ThrowsClause</a>&gt;&nbsp;checkGuardThrowsPairs(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;args)</pre>
<div class="block">Evaluate the guard of each local <a href="../../randoop/condition/GuardThrowsPair.html" title="class in randoop.condition"><code>GuardThrowsPair</code></a>, and for each one satisfied, add the
 <a href="../../randoop/condition/ThrowsClause.html" title="class in randoop.condition"><code>ThrowsClause</code></a> to the set of expected exceptions.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>args</code> - the argument values</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the set of exceptions for which the guard expression evaluated to true</dd>
</dl>
</li>
</ul>
<a name="checkGuardPropertyPairs-java.lang.Object:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkGuardPropertyPairs</h4>
<pre>private&nbsp;<a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition">ExecutableBooleanExpression</a>&nbsp;checkGuardPropertyPairs(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;args)</pre>
<div class="block">Tests the given argument values against the guards of local postconditions, which are the
 <a href="../../randoop/condition/GuardPropertyPair.html" title="class in randoop.condition"><code>GuardPropertyPair</code></a> objects in this <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a>. Returns the <a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition"><code>ExecutableBooleanExpression</code></a> from the first pair whose guard expression evaluated to true.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>args</code> - the argument values</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the property for the first <a href="../../randoop/condition/GuardPropertyPair.html" title="class in randoop.condition"><code>GuardPropertyPair</code></a> for which the guard expression
     evaluates to true; null if there is none</dd>
</dl>
</li>
</ul>
<a name="addParent-randoop.condition.ExecutableSpecification-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addParent</h4>
<pre>void&nbsp;addParent(<a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition">ExecutableSpecification</a>&nbsp;parentExecSpec)</pre>
<div class="block">Add the parent <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a> for this collection.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parentExecSpec</code> - the <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a> to which to link</dd>
</dl>
</li>
</ul>
<a name="isEmpty--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>isEmpty</h4>
<pre>public&nbsp;boolean&nbsp;isEmpty()</pre>
<div class="block">Indicates whether the full specification is empty: this <a href="../../randoop/condition/ExecutableSpecification.html" title="class in randoop.condition"><code>ExecutableSpecification</code></a>, and
 any member of the parent list, has no guard expresions, no property pairs, and no throws pairs.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if there are no guard expressions, or property or throws pairs in this or the
     parent list, false otherwise</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../randoop/condition/ExecutableBooleanExpression.html" title="class in randoop.condition"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../randoop/condition/ExpectedOutcomeTable.html" title="class in randoop.condition"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?randoop/condition/ExecutableSpecification.html" target="_top">Frames</a></li>
<li><a href="ExecutableSpecification.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
